In recent years, with the expansion of broadband environments such as xDSL and an optical-fiber telecommunications system, Internet connection services have increasingly become available both for business use and for home use. A home network environment, which connects an at-home personal computer (PC) and an electric appliance via Ethernet (registered trademark), wireless LAN or the like, has also become familiar. Reflecting such a situation, it has become possible to connect not only PCs, but also home electric appliances such as a television, a DVD recorder, an air conditioner, and a refrigerator, to each other with an IP (Internet Protocol) defined by IETF (Internet Engineering Task Force).
As an application for the Internet and a home network, there are applications used for making AV content such as music and moving image available between electric appliances/PCs/an electric appliance and a PC. For example, such applications provide an AV streaming function for making the broadcast program recorded in a DVD recorder available with a TV, a PC, or the like which are connected to a network.
As a protocol for performing such an AV streaming, typically, HTTP (Hyper Text Transfer Protocol) defined by RFC2616, RTP (Real-time Transport Protocol) defined by RFC1889, and the like have been available. HTTP, in particular, ensures transfer reliability by the resending function of TCP (Transmission Control Protocol). Specifically, TCP includes a procedure for detecting a packet error to resend the packet received in error, and a procedure for detecting a packet loss to resend the lost packet, which ensures reliable file transfer even when an error or a packet loss occurs on a transmission channel.
In a network environment where a transmission error tends to occur, its throughput characteristically becomes lower due to data retransmission. TCP, therefore, is suitable for the AV streaming under the environment where an error or a packet loss tends to occur on a transmission channel, such as a home network. TCP is a basic AV streaming method for standards such as UPnP AV (Universal Plug and Play Audio/Video Architecture) and DLNA (Digital Living Network Alliance).
The AV streaming with HTTP, although it has high reliability, depends on the resources on the AV server side in order to maintain its real time performance. For example, the AV server side has to manage resource allocation for handling the accumulated data requiring a high-bit rate transfer speed, for being multiple-accessed simultaneously, or the like, with consideration given to its throughput. The following resource allocation managing methods are available: (1) A limit is set on the number of TCP connections for sending/receiving an HTTP message. In this case, if a client device tries to request network playback beyond the limit later, typically, an error message is sent to the client device, or alternatively, the request itself is ignored. The client device which has established a connection ahead of time, continues to play back AV content. This is the idea “prefetch priority”, which means that a higher priority is given to the device which has established a connection ahead of time. Physical connection is typically based on the idea “prefetch priority”.
On the other hand, (2) UPnP AV has a function called CMS (Connection Manager Service) for connection management, in which a command for establishing/disconnecting a logical connection (SOAP Action) is available. Specifically, the command for establishing a connection is CMS::PrepareForConnection. As receiving the command, the AV server issues an ID if there are enough resources within the server. In order to disconnect the connection, the command CMS::ConnectionComplete is sent to the AV server so that the AV server releases the resources. The function CMS, which is used for establishing a logical connection, typically establishes an association, for example by adding an ID to an HTTP header, so as to work together with HTTP AV streaming.
The command CMS::ConnectionComplete is not necessarily issued only by the device which has acquired an ID by the command CMS::PrepareForConnection. Therefore, it is also possible that the connection which has been established by a client device is disconnected by another client device later, by issuing the command CMS::GetCurrentConnectionIDs for browsing IDs to which resources are allocated within the AV server and then sending CMS::ConnectionComplete to the AV server, so as to obtain and further release the IDs. This is the idea “postfetch priority”, which means a higher priority is given to the device which has established a connection later. Logical connection is typically based on the idea “postfetch priority”.
In the method (2), resources are thus managed based on the number of CMS logical connections, apart from the number of TCP connections.
The foregoing is disclosed, for example, in Patent Documents 1 and 2.    Patent Document 1: Japanese Laid-Open Patent Application No. 2002-84484    Patent Document 2: Japanese Laid-Open Patent Application No. 2004-348454